// 声明一个变量 a，同时指定它的类型为 Number
let a: number;

a = 10;
a = 33;
// a = "hello";// 报错，但可以编译

let b: string;

b = "hello";
// b = 33; // 报错

// let c: boolean = true;
let c = true; // 如果变量的声明和赋值是同时进行的，TS 可以自动对变量进行类型检测

c = false;
// c = 33; // 报错

function sum(a: number, b: number): number {
  return a + b;
  // return a + "b";// 报错
}

let result = sum(123, 456); // 579
// sum(123, "456"); // 报错
// sum(123, 456, 789); // 报错
